f6df7a6d44d38fff4c7884b1246452942c28fe73,drools-wb-screens/drools-wb-guided-dtable-editor/drools-wb-guided-dtable-editor-client/src/test/java/org/drools/workbench/screens/guided/dtable/client/widget/analysis/DecisionTableAnalyzerDeficiencyTest.java,DecisionTableAnalyzerDeficiencyTest,testRuleIsDeficient004,#,182

Before Change



    @Test
    public void testRuleIsDeficient004() throws Exception {
        GuidedDecisionTable52 table52 = new ExtendedGuidedDecisionTableBuilder( "org.test",
                                                                                new ArrayList<Import>(),
                                                                                "mytable" )
                .withConditionIntegerColumn( "a", "Person", "age", "==" )
                .withStringColumn( "a", "Person", "name", "==" )
                .withStringColumn( "a", "Person", "lastName", "==" )
                .withActionSetField( "a", "salary", DataType.TYPE_NUMERIC_INTEGER )
                .withActionSetField( "a", "description", DataType.TYPE_STRING )
                .withData( new Object[][]{
                        { 1, "description", 10, "", "", 100, "ok" },
                        { 2, "description", null, "Eder", "", 200, "ok" },
                        { 3, "description", 12, "Toni", "Rikkola", 300, "ok" },
                        { 4, "description", null, "", "", null, "" }
                } )
                .buildTable();

        DecisionTableAnalyzer analyzer = analyzerProvider.makeAnalyser( table52 );

        analyzer.analyze( Collections.emptyList() );

        assertDoesNotContain( "DeficientRow", analyzerProvider.getAnalysisReport(), 1 );
        assertDoesNotContain( "DeficientRow", analyzerProvider.getAnalysisReport(), 2 );
        assertDoesNotContain( "DeficientRow", analyzerProvider.getAnalysisReport(), 3 );
        assertDoesNotContain( "DeficientRow", analyzerProvider.getAnalysisReport(), 4 );

        table52.getData().get( 2 ).get( 3 ).setStringValue( "" );

        ArrayList<Coordinate> updates = new ArrayList<>();
        updates.add( new Coordinate( 2, 3 ) );
        analyzer.analyze( updates );

        assertDoesNotContain( "DeficientRow", analyzerProvider.getAnalysisReport(), 1 );
        assertContains( "DeficientRow", analyzerProvider.getAnalysisReport(), 2 );

After Change


                        { 3, "description", 12, "Toni", "Rikkola", 300, "ok" },
                        { 4, "description", null, "", "", null, "" }
                } )
                .buildTable();

        fireUpAnalyzer();